package com.example.tass.domain;

import cn.tass.SRJ1933.devices.utis.StringUtils;
import cn.tass.exceptions.TAException;
import cn.tass.logger.Logger;
import com.alibaba.fastjson.annotation.JSONField;

public class MyVerifyRawSignRequest extends MyBaseRequest{
    private String keyOrCertId;
    private Integer keyOrCertIdType;
    private String algorithm;
    private String data;
    private Integer dataType;
    private String sign;
    private Integer signFormat;
    private String sm2UserID;
    private Integer rsaPadMode;
    private Integer verifyLevel;
    @JSONField(
            name = "isReturnPubKeyInfo"
    )
    private boolean isReturnPubKeyInfo;

    public MyVerifyRawSignRequest() {
    }

    public String getKeyOrCertId() {
        return this.keyOrCertId;
    }

    public void setKeyOrCertId(String keyOrCertId) {
        this.keyOrCertId = keyOrCertId;
    }

    public Integer getKeyOrCertIdType() {
        return this.keyOrCertIdType;
    }

    public void setKeyOrCertIdType(Integer keyOrCertIdType) {
        this.keyOrCertIdType = keyOrCertIdType;
    }

    public String getAlgorithm() {
        return this.algorithm;
    }

    public void setAlgorithm(String algorithm) {
        this.algorithm = algorithm;
    }

    public String getData() {
        return this.data;
    }

    public void setData(String data) {
        this.data = data;
    }

    public Integer getDataType() {
        return this.dataType;
    }

    public void setDataType(Integer dataType) {
        this.dataType = dataType;
    }

    public String getSign() {
        return this.sign;
    }

    public void setSign(String sign) {
        this.sign = sign;
    }

    public Integer getSignFormat() {
        return this.signFormat;
    }

    public void setSignFormat(Integer signFormat) {
        this.signFormat = signFormat;
    }

    public String getSm2UserID() {
        return this.sm2UserID;
    }

    public void setSm2UserID(String sm2UserID) {
        this.sm2UserID = sm2UserID;
    }

    public Integer getRsaPadMode() {
        return this.rsaPadMode;
    }

    public void setRsaPadMode(Integer rsaPadMode) {
        this.rsaPadMode = rsaPadMode;
    }

    public Integer getVerifyLevel() {
        return this.verifyLevel;
    }

    public void setVerifyLevel(Integer verifyLevel) {
        this.verifyLevel = verifyLevel;
    }

    public boolean isReturnPubKeyInfo() {
        return this.isReturnPubKeyInfo;
    }

    public void setIsReturnPubKeyInfo(boolean isReturnPubKeyInfo) {
        this.isReturnPubKeyInfo = isReturnPubKeyInfo;
    }

    public void validate() throws TAException {
        this.checkParamIsEmpty(this.keyOrCertId, "keyOrCertId");
        this.checkParamIsEmpty(this.data, "data");
        this.checkParamIsEmpty(this.sign, "sign");
    }
    
}
